#ifndef _QUEUE_H
#define _QUEUE_H

typedef struct queue {
	void **data;
	int front;
	int rear;
	int size;
} queue;

queue * q_create(int size);
void q_push(queue *que, void *e);
void q_destroy(queue *que);
int q_empty(queue *que);
void *q_pop(queue *que);
int q_size(queue *que);

#endif
